package com.elric.mall.service;

import com.elric.mall.dto.FundingInvestmentDto;
import com.elric.mall.dto.ProcessInfoDto;
import com.elric.mall.dto.ProjectBaseInfoDto;
import com.elric.mall.model.UmsAdmin;
import com.elric.mall.model.ZgFundingInvestment;
import com.elric.mall.model.ZgProjectEntityNew;

import java.util.List;

/**
 * 实现功能：规划项目信息服务层
 *
 * @author 作者[Yuxuan.he]
 * @version 1.0.00  2021-09-16 11:14
 */
public interface ZgProjectEntityNewService {

    /**
     * 创建
     */
    int create(ZgProjectEntityNew zgProjectEntityNew);

    /**
     * 更新
     */
    int update(ZgProjectEntityNew zgProjectEntityNew);

    /**
     * 保存基本信息接口
     * @param projectBaseInfoDto
     * @return
     */
    int saveBaseInfo(ProjectBaseInfoDto projectBaseInfoDto, UmsAdmin umsAdmin);

    /**
     * 保存经费投入信息
     * @param fundingInvestmentDto
     * @return
     */
    int saveFundingInfo(FundingInvestmentDto fundingInvestmentDto);

    /**
     * 保存项目进程信息
     * @param fundingInvestmentDto
     * @return
     */
    int saveProcessInfo(ProcessInfoDto fundingInvestmentDto);

    List<ZgFundingInvestment> findFundingInfo(String projectId, String createId);
    ProcessInfoDto findProcessInfo(String projectId, String createId);

    /**
     * 根据ID获取详情
     */
    ZgProjectEntityNew findById(String id, String createId);

    /**
     * 根据ID删除
     */
    int delete(String id, String createId);

    /**
     * 分页查询
     */
    List<ZgProjectEntityNew> list(Integer pageSize, Integer pageNum, ZgProjectEntityNew zgProjectEntityNew);
}
